# 处理数据
import json

from pyecharts.charts import Line
from pyecharts.options import TitleOpts, LegendOpts, ToolboxOpts, VisualMapOpts, TooltipOpts

US = open("F:/Python/res/美国.txt", "r", encoding="utf-8")
us_data = US.read()
# print(type(us_data))
# 去除不符合json规范的开头
us_data = us_data.replace("jsonp_1629344292311_69436(", "")

# 去除不符合json规范的结尾
us_data = us_data[:-2]

# json转python的字典
us_dict = json.loads(us_data)
# print(type(us_dict))
# print(us_dict)

# 获取trend key
trend_dict=us_dict["data"][0]["trend"]
# print(type(trend_dict))
# print(trend_dict)
# 获取日期数据用于x轴,只取2020年的数据
x_dict=trend_dict["updateDate"][:314]
print(type(x_dict))
print(x_dict)
# 获取日期数据用于y轴,只取2020年的数据
y_dict01=trend_dict["list"][0]["data"][:314]
y_dict02=trend_dict["list"][1]["data"][:314]
y_dict03=trend_dict["list"][2]["data"][:314]
y_dict04=trend_dict["list"][3]["data"][:314]

# 生成图表
line01=Line()
# 添加x轴数据
line01.add_xaxis(x_dict)
# 添加y轴数据
line01.add_yaxis("确诊人数",y_dict01)
line01.add_yaxis("治愈人数",y_dict02)
line01.add_yaxis("死亡人数",y_dict03)
line01.add_yaxis("新增确诊人数",y_dict04)
# 设置全局配置选项
line01.set_global_opts(
    # 标题名字
    title_opts=TitleOpts(title="2020年美国新型冠状病毒确诊人数",pos_left="center",pos_bottom="1%"),
    # 图例
    legend_opts=LegendOpts(is_show=True),
    # 工具箱
    toolbox_opts=ToolboxOpts(is_show=True),
    # 视觉映射
    visualmap_opts=VisualMapOpts(is_show=True),

    tooltip_opts=TooltipOpts(is_show=True),
)
# 通过render方法，将代码生成为图表
line01.render("epidemic_US.html")